\documentclass[twoside]{book}

% Packages required by doxygen
\usepackage{fixltx2e}
\usepackage{calc}
\usepackage{doxygen}
\usepackage[export]{adjustbox} % also loads graphicx
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{makeidx}
\usepackage{multicol}
\usepackage{multirow}
\PassOptionsToPackage{warn}{textcomp}
\usepackage{textcomp}
\usepackage[nointegrals]{wasysym}
\usepackage[table]{xcolor}

% Font selection
\usepackage[T1]{fontenc}
\usepackage[scaled=.90]{helvet}
\usepackage{courier}
\usepackage{amssymb}
\usepackage{sectsty}
\renewcommand{\familydefault}{\sfdefault}
\allsectionsfont{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\renewcommand{\DoxyLabelFont}{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}

% Page & text layout
\usepackage{geometry}
\geometry{%
  a4paper,%
  top=2.5cm,%
  bottom=2.5cm,%
  left=2.5cm,%
  right=2.5cm%
}
\tolerance=750
\hfuzz=15pt
\hbadness=750
\setlength{\emergencystretch}{15pt}
\setlength{\parindent}{0cm}
\setlength{\parskip}{3ex plus 2ex minus 2ex}
\makeatletter
\renewcommand{\paragraph}{%
  \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@parafont%
  }%
}
\renewcommand{\subparagraph}{%
  \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@subparafont%
  }%
}
\makeatother

% Headers & footers
\usepackage{fancyhdr}
\pagestyle{fancyplain}
\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}}
\fancyhead[CE]{\fancyplain{}{}}
\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}}
\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}}
\fancyhead[CO]{\fancyplain{}{}}
\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
\fancyfoot[LE]{\fancyplain{}{}}
\fancyfoot[CE]{\fancyplain{}{}}
\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
\fancyfoot[CO]{\fancyplain{}{}}
\fancyfoot[RO]{\fancyplain{}{}}
\renewcommand{\footrulewidth}{0.4pt}
\renewcommand{\chaptermark}[1]{%
  \markboth{#1}{}%
}
\renewcommand{\sectionmark}[1]{%
  \markright{\thesection\ #1}%
}

% Indices & bibliography
\usepackage{natbib}
\usepackage[titles]{tocloft}
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{5}
\makeindex

% Custom commands
\newcommand{\clearemptydoublepage}{%
  \newpage{\pagestyle{empty}\cleardoublepage}%
}

\usepackage{caption}
\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}

%===== C O N T E N T S =====

\begin{document}

% Titlepage & ToC
\pagenumbering{alph}
\begin{titlepage}
\vspace*{7cm}
\begin{center}%
{\Large IgH Ether\+C\+AT Master \\[1ex]\large 1.\+5.\+2 }\\
\vspace*{1cm}
{\large Generated by Doxygen 1.8.13}\\
\end{center}
\end{titlepage}
\clearemptydoublepage
\pagenumbering{roman}
\tableofcontents
\clearemptydoublepage
\pagenumbering{arabic}

%--- Begin generated contents ---
\chapter{Main Page}
\label{index}\input{index}
\chapter{Todo List}
\label{todo}
\input{todo}
\chapter{Module Index}
\input{modules}
\chapter{Data Structure Index}
\input{annotated}
\chapter{File Index}
\input{files}
\chapter{Module Documentation}
\input{group__ApplicationInterface}
\include{group__TTYInterface}
\include{group__DeviceInterface}
\chapter{Data Structure Documentation}
\input{structec__cdev__priv__t}
\input{structec__cdev__t}
\input{structec__code__msg__t}
\input{structec__coe__emerg__msg__t}
\input{structec__coe__emerg__ring__t}
\input{structec__datagram__pair__t}
\input{structec__datagram__t}
\input{structec__debug__t}
\input{structec__device}
\input{structec__device__stats__t}
\input{structec__domain}
\input{structec__domain__state__t}
\input{structec__eoe}
\input{structec__eoe__frame__t}
\input{structec__fmmu__config__t}
\input{structec__foe__request__t}
\input{structec__fsm__change}
\input{structec__fsm__coe}
\input{structec__fsm__foe}
\input{structec__fsm__master}
\input{structec__fsm__pdo}
\input{structec__fsm__pdo__entry}
\input{structec__fsm__sii}
\input{structec__fsm__slave}
\input{structec__fsm__slave__config}
\input{structec__fsm__slave__scan}
\input{structec__fsm__soe}
\input{structec__master}
\input{structec__master__info__t}
\input{structec__master__link__state__t}
\input{structec__master__state__t}
\input{structec__pdo__entry__info__t}
\input{structec__pdo__entry__reg__t}
\input{structec__pdo__entry__t}
\input{structec__pdo__info__t}
\input{structec__pdo__list__t}
\input{structec__pdo__t}
\input{structec__reg__request}
\input{structec__rtdm__context__t}
\input{structec__rtdm__dev}
\input{structec__sdo}
\input{structec__sdo__entry__t}
\input{structec__sdo__request}
\input{structec__sii__coe__details__t}
\input{structec__sii__general__flags__t}
\input{structec__sii__t}
\input{structec__sii__write__request__t}
\input{structec__slave}
\input{structec__slave__config}
\input{structec__slave__config__state__t}
\input{structec__slave__info__t}
\input{structec__slave__port__link__t}
\input{structec__slave__port__t}
\input{structec__soe__request__t}
\input{structec__stats__t}
\input{structec__sync__config__t}
\input{structec__sync__info__t}
\input{structec__sync__signal__t}
\input{structec__sync__t}
\input{structec__tty__operations__t}
\input{structec__voe__handler}
\chapter{File Documentation}
\input{cdev_8c}
\input{cdev_8h}
\input{coe__emerg__ring_8c}
\input{coe__emerg__ring_8h}
\input{datagram_8c}
\input{datagram_8h}
\input{datagram__pair_8c}
\input{datagram__pair_8h}
\input{debug_8c}
\input{debug_8h}
\input{device_8c}
\input{device_8h}
\input{domain_8c}
\input{domain_8h}
\input{doxygen_8c}
\input{ecdev_8h}
\input{ecrt_8h}
\input{ectty_8h}
\input{ethernet_8c}
\input{ethernet_8h}
\input{fmmu__config_8c}
\input{fmmu__config_8h}
\input{foe_8h}
\input{foe__request_8c}
\input{foe__request_8h}
\input{fsm__change_8c}
\input{fsm__change_8h}
\input{fsm__coe_8c}
\input{fsm__coe_8h}
\input{fsm__foe_8c}
\input{fsm__foe_8h}
\input{fsm__master_8c}
\input{fsm__master_8h}
\input{fsm__pdo_8c}
\input{fsm__pdo_8h}
\input{fsm__pdo__entry_8c}
\input{fsm__pdo__entry_8h}
\input{fsm__sii_8c}
\input{fsm__sii_8h}
\input{fsm__slave_8c}
\input{fsm__slave_8h}
\input{fsm__slave__config_8c}
\input{fsm__slave__config_8h}
\input{fsm__slave__scan_8c}
\input{fsm__slave__scan_8h}
\input{fsm__soe_8c}
\input{fsm__soe_8h}
\input{globals_8h}
\input{ioctl_8c}
\input{ioctl_8h}
\input{mailbox_8c}
\input{mailbox_8h}
\input{master_8c}
\input{master_8h}
\input{module_8c}
\input{pdo_8c}
\input{pdo_8h}
\input{pdo__entry_8c}
\input{pdo__entry_8h}
\input{pdo__list_8c}
\input{pdo__list_8h}
\input{reg__request_8c}
\input{reg__request_8h}
\input{rtdm-ioctl_8c}
\input{rtdm_8c}
\input{rtdm_8h}
\input{sdo_8c}
\input{sdo_8h}
\input{sdo__entry_8c}
\input{sdo__entry_8h}
\input{sdo__request_8c}
\input{sdo__request_8h}
\input{slave_8c}
\input{slave_8h}
\input{slave__config_8c}
\input{slave__config_8h}
\input{soe__errors_8c}
\input{soe__request_8c}
\input{soe__request_8h}
\input{sync_8c}
\input{sync_8h}
\input{sync__config_8c}
\input{sync__config_8h}
\input{voe__handler_8c}
\input{voe__handler_8h}
%--- End generated contents ---

% Index
\backmatter
\newpage
\phantomsection
\clearemptydoublepage
\addcontentsline{toc}{chapter}{Index}
\printindex

\end{document}
